package main

import "fmt"

func main() {
	var x interface{}
	var b float64 = 1.1
	x = b // 空接口可以接受任意类型
	// 类型断言 如果不匹配，会有panic异常
	y := x.(float64)
	fmt.Printf("y:%T,valus:%v \n", y, y) // y:float64,valus:1.1

	z, ok := x.(float32)
	if ok {
		fmt.Printf("z:%T,value:%v", z, z)
	} else {
		fmt.Println("convert fail")
	}
	/*if z,ok := x.(float32);ok {
		fmt.Printf("z:%T,value:%v",z,z)
	} else {
		fmt.Println("convert fail")
	}*/
	fmt.Println("...")

}
